
//配置axios的全局基本路径，访问后端接口使用8080
axios.defaults.baseURL='http://localhost:8080/'
//全局属性配置，在任意组件内可以使用this.$http获取axios对象
Vue.prototype.$http = axios


// 前置拦截器
axios.interceptors.request.use(res=>{
    let token = localStorage.getItem("token");
    if(token){
        res.headers["token"] = token;
    }
    return res;
})


// 静态资源拦截器
let url = location.href;
if (url.indexOf("login.html")==-1 && url.indexOf("register.html")==-1 && url.indexOf("callback.html")==-1
    && url.indexOf("binder.html")==-1){
    let logininfo = localStorage.getItem("logininfo");
    console.log(logininfo);
    if (!logininfo){
        location.href = "login.html";
    }
}



// 后置拦截器
axios.interceptors.response.use(res=>{
    if (!res.data.success && res.data.message === 'noLogin'){

        localStorage.removeItem("token");
        localStorage.removeItem("logininfo")

        location.href = "/login.html";

    }
    return res;
})

// 将地址栏的参数 转换成json格式的对象 因为以后这样的需求很多
function param2JsonObj(url){

    // 截取到问号后的路径 code=031QtAll2kBeA64RzJol2gpcaW3QtAlk&state=1
    var params = url.substring(url.indexOf("?")+1);
    // 数组 code=031QtAll2kBeA64RzJol2gpcaW3QtAlk,state=1
    var parArr = params.split("&");


    var obj = {};

    for (var i = 0;i<parArr.length; i++ ){
        // 获取单个值
        var para = parArr[i];
        // 获取参数名
        var parakey=para.split("=")[0];
        // 获取参数值
        var paraValue = para.split("=")[1];
        obj[parakey] = paraValue;
    }

    return obj;


}

